#!/bin/bash

# HPL-MxP 主要用于测试并行计算系统的浮点运算性能
# 需要4张显卡才可以运行

# 更新软件包,安装 Docker,设置开机启动,将当前用户添加到 Docker 组
sudo apt update
sudo apt install docker.io
sudo systemctl start docker && sudo systemctl enable docker
sudo usermod -aG docker $USER


# 提示用户重启或注销后重新登录
echo "Docker 安装完成。请重启计算机或注销后重新登录。"

# 检查是否已存在 run_hplmxp.sh 脚本，如果不存在则创建
if [ ! -f "run_hplmxp.sh" ]; then
    cat >run_hplmxp.sh <<EOF
#!/bin/bash

# 拉取 Docker 镜像
docker pull amdih/hpl-ai:1.0.0

# 在 Docker 容器内运行 HPL-MxP 应用程序，配置必要的硬件访问权限
docker run --rm -it \
  --device=/dev/kfd \
  --device=/dev/dri \
  --security-opt seccomp=unconfined \
  --net=host \
  amdih/hpl-ai:1.0.0 \
  mpirun -np 1 --map-by node:PE=1 hpl-ai -P 1 -B 2560 -N 168960
EOF
    chmod +x run_hplmxp.sh
fi

echo "建立运行脚本 run_hplmxp.sh 完成，您现在可以运行它来启动 HPL-MxP 。"
echo "重启电脑后，输入 run_hplmxp.sh 运行"

sudo reboot

